#pragma once

enum DwarfType
{
    DWARF_FARMER,
    DWARF_WARRIOR,
    DWARF_CRAFTSMAN,
    DWARF_MINER,
    DWARF_NONE
};

class CDwarf
{
public:
    CDwarf(DwarfType type);
    ~CDwarf();
    DwarfType GetType();
    std::string GetTypeStr();
    void SetType(DwarfType type);

private:
    DwarfType m_type;
};

typedef std::shared_ptr<CDwarf> DwarfPtr;
std::string DwarfTypeToStr(DwarfType type);
DwarfType GetDwarfType(std::string str);